Graphics rendering and other visualization applications typically utilize accelerated hardware, firmware, and sometimes even software modules to perform compute-intensive rendering operations. These applications also utilize a graphics system interface such as OPENGL(copyright) or DIRECT3D(copyright) to control low-level graphics drawing operations in these accelerated modules. These operations include, but are not limited to, polygon specification and transformations, basic lighting control, and frame buffer operations such as blending and depth-buffering. Transformations usually correctly position one or more three-dimensional objects, and then applies lighting and/or textures using the correct size and angles. OPENGL(copyright) utilizes a variety of low-level models such as textures which may be defined for objects within scenes, and lighting models, which may define light sources and the manner in which surfaces in the scenes reflect light therefrom. Unfortunately, any increase in the quality of an object""s appearance is typically associated with a decrease in processing speed. This decrease in processing speed is undesirable, especially for interactive applications.
Most graphics system processing utilizes fixed point pixel values at one or more points in the image pipeline. For example, pixel data values during rasterization and in a frame buffer are typically restricted to between zero and one. That is, these values are clamped with the use of graphics system interfaces such as OPENGL(copyright) or DIRECT3D(copyright). This compression of pixel values may reduce the accuracy to which light and/or color may be displayed and/or processed. This compression of values typically limits the accuracy and flexibility with which the appearances of objects, such as their texture, may be represented. In many cases pixels may also be displayed using special calligraphic displays or projectors that typically provide dynamic range far above standard raster displays. That is, they may display pixels with an intensity that is hundreds or thousands of times brighter than those that may typically be displayed. These solutions typically use xe2x80x98fudge factorsxe2x80x99 to force separation of pixels to be displayed using the calligraphic device and require additional modules. These modules utilize additional mechanical and electrical interfaces and, in some applications, require additional time, memory and processing resources to process the data. For example, current systems may utilize modules that receive as inputs those fractions of pixels that are touched as a result of passing a depth test to determine whether one or more xe2x80x9cfuzzyxe2x80x9d regions, rather than single points, are occluded.
From the foregoing, it may be appreciated that a need has arisen for streamlining the display of extended range pixel values from graphics pipelines. In accordance with the present invention, an extended range pixel display system and method are provided that substantially eliminate or reduce disadvantages and problems of conventional systems.
One aspect of the invention is a method for displaying extended range pixel values. The method includes the step of receiving a plurality of image pixel values each with at least one associated data value. The method also includes the steps of sending at least one of the plurality of image pixel values to a first display device having a maximum display value; and sending at least one of the plurality of image pixel values exceeding maximum display value to a second display device. In a further embodiment, the at least one associated data value may be at least one of the group consisting of a pixel intensity, a color, and a location of the pixel value.
The invention provides several important advantages. Various embodiments of the invention may have none, some, or all of these advantages. For example, the invention may be used to implement higher resolution values for operations such as texturing. Such an advantage may improve the quality of the resultant texture. The invention may be used with a variety of existing systems with low impact on the speed of processing.
The invention may reduce the number of components required as compared to conventional graphics display systems. For example, no additional calligraphic processor is needed to implement separation of these pixel values. The invention allows actual pixel values to be processed in the frame buffer, thereby improving the accuracy of pixel processing. A display driver may process and clamp these extended pixel values and identify values to be displayed using the calligraphic display device from those being displayed on a normal device.